#ifndef _DNS_DATA_STORE_HEADER_H
#define _DNS_DATA_STORE_HEADER_H

#include "dig_buffer.h"
#include "dig_wire_name.h"
#include "zip_pkg_list.h"
typedef struct record_store record_store_t;

record_store_t *
record_store_create();

void
record_store_delete(record_store_t *record_store);

uint32_t
record_store_get_total_mem_size(record_store_t *record_store);

void
record_store_free_part_momery(record_store_t *record_store, uint32_t recover_size);

void
record_store_insert_pkg(record_store_t *record_store,
                            wire_name_t *wire_name,
                            pkg_data_t *pkg_data);

pkg_data_t *
record_store_get_pkg(record_store_t *record_store,
                   wire_name_t *wire_name,
                   uint8_t query_type);
#endif
